Oggcamp 2024
Published: October 31, 2024
On the 12th October 2024, I headed off to Manchester for OggCamp 2024. This is the first time I have participated in person at an event like this, so I was a little nervous! I made a weekend of it, and would like to share some of the talks I joined.
Location

The event was held in the Pendulum Hotel in Manchester. This is a great space, with a big room for the Plenary discussions, a separate lecture theatre used on Saturday for several of the talks, and two smaller breakout rooms. There was also a big social space where Merchandise was available, the swap shop was held, and several organisation had their tables. In the middle of the spaces was a bar, with food available. I didn't stay in a hotel, but instead stayed with my daughter and her partner, who live in Manchester.
Talks - Day 1
The schedule for the event was shared on joind.in. These are the talks/events I joined on day 1:
Day 1 welcome
Information about the event, and a welcome from the organisers.
Computer Science is in the way of Climate Science
Background
A presentation from Michael Winston Dales, a Planetary Computing Fellow working in the Computer Lab at Cambridge University. He is working at the Cambridge Conservation Initiative. In this role, he is supporting the Climate Scientists with their research in to Climate Science, and in particular helping them with the computer science used to process and share their data.

Data Sources
Many data sources are used for Climate Science:
To process the data, all the tools used are open source. The primary tools are Python and Julia, but these are underpinned by many other components and libraries. The scientists working with this data are not formally trained computer scientists, but experts in their fields and use software to process and evaluate their data. Much of the software available is not ideal for this target group. Reproducibility is key, and the whole software stack needs to be under control to ensure repeatable analysis results can be obtained.
Example Project
"Area of Habitat" map. This is created for 40,000 species, and the range metadata is a 150GB raster. The Habitat information is also a 150GB raster, so combining all this information is challenging - massive memory resources are required if you have a big area to cover. For example, the Mousse covers most of the Northern Hemisphere. You can use Google resources, but this has problems with reproducibility.
Sources of Truth
When APIs change, this can cause problems with existing code. Vernacular programmers can find debugging these issues challenging!
Summary
If you are working on code, please consider how you can support programmers who are using your output, but who are not experienced programmers.
System Containers
Background
Paul Barker presented his approach to containers on his own home network, and explained why he doesn't use docker, but uses Incus instead. Terminology:
Application Containers: bundle of dependencies for an application.
System Containers: Full Linux installation with a package manager.
Recommendation from Paul: Use systems containers instead of application containers. Alternatively, if you have to use docker, do due diligence on the docker file, and rebuild everything locally. For production, rebuild the entire docker file.
Why?
Application containers are often impossible to debug
It is impossible to confirm that all the packages in the container are up to date.
Licence compliance is difficult or even impossible to confirm
The quality of Dockerfiles is variable.
Alternatives
For system containers, use Incus
Forked from LXD after Canonical shinanigans
Supports VMs as well as containers
Runs as a service, managed via CLI or API.
Has stable and LTS releases
Easy to get started with, and achieve good results
Many advanced options
Supports device passthrough
Set up a flat network
use btrfs storage
sshd in every container
use pyinfra to provide infrastructure as code. Why not Ansible? You could use Ansible, but yaml is not a programming language!
My take outs
I use several docker containers on a VM on top of Proxmox. I have not given consideration to the points raised by Paul before this presentation, but realise I should take them more seriously. I will have formulated a plan to move away from docker, and to investigate Incus and pyinfra for my own uses.
Automating the home and annoying loved ones
Background
Charlie O'Hara lives in Berlin with her partner, and has been using Home Assistant to automate different elements in their home. This talk was an engaging, explanation of the journey they have followed to the current point. Now in their own apartment in Berlin, the opportunity to fully integrate Home Assistant into the fabric of the building has presented itself.
My Take outs
My first foray into Home Assistant was not a success, but I will happily take responsibility for this rather than placing the blame on Home Assistant. I already had MQTT running on a separate container, and struggled with the integration with HA. I was also not comfortable with HA recognising and integrating everything it could find on the network, even though it did ask me first. The final straw was when I had to re-integrate something, and removing the orphan entities proved quite challenging. For my simple automation experiments, I simply didn't need the layers of abstraction put in the way by HA, but preferred to use MQTT, NodeRed, grafana and ESPHome directly. Following this talk I reflected on this, and decided to give HA another try. I understand many improvements have been made over the last couple of years which remove some of my original pain points. I will use the integrated versions of nodeRed, ESPHome and MQTT rather than my external versions. I will also get a thin client (Dell Wyse 5070 or similar) on which to run HA.
Audio Podcasting 101
Background
Joe Ressington (@joeress@fosstodon.org) has been a podcaster for many years, and produces the excellent Late Night Linux family of Podcasts. This talk is aimed at giving the attendees a clear understanding of the requirements to create and deliver podcasts. It was not aimed at sharing how to create good content!
Recording Space
Minimise echo with basic physics
Lots of stuff and clutter
Carpet / rug
Cushions / pillows
Acoustic foam on walls
Can also use a "mini vocal booth" - gets rid of echo
Recommended Hardware
Audio-Technica ATR2100x-USB
Shure SM58
EV RA20
Condenser microphones
Sound better in the perfect setup
More forgiving of poor technique
BUT
Super sensitive - pick up background noises and echos etc
Need USB power
Dynamic Mics
More voice capture vs background noise
requires good practice
Foam vs arm type Arm type = better, but foam type better for video
How to record
This assumes more than one presenter, with the presenters remote from each other. Each person records their own output, and the content is brought together afterwards.
One person takes charge
Check everyone is ready
3..2..1 - record - everyone starts together
Check the correct microphone is recording
4 count sync 1..2..3..[4] (4 all together)
absolute silence - 10 secs (no breathing)
Send you recordings as FLAC (lossless)
Processing the Recorded Audio
Using Audacity
Record some ABSOLUTE silence
Select the silence
Listen CAREFULLY to the silence
Effect > Noise Reduction
get noise profile
select all
Open Noise Reduction again
Hit OK
Parametric EQ is the easiest
Good visual representation
Remove the low end "boom"
Boost or cut (sparingly) to taste
Dynamic compression
loud bits quieter
quiet bits louder
Makes everything roughly the same volume
Right level of compression to use is subjective
Top and tail vs "proper edit"
Leave. A. Beat. If you chop something out, keep the cadence of the discussion in place. ie - leave gaps!
Don't cut off breaths
Fades are your friends
Listen back IN FULL
Intro/outro music - keep short - attention spans are not what they used to be.
MP3 is fine - works everywhere!
ogg if you must (as well)
16-bit 44.1 kHz
112 Kbps
Mono! Don't need to spread people out across two channels. Music podcast is of course different.
Tag your MP3
audacity
kid3/easyTag
Somewhere to host the MP3 file
Self host - Same server as the website. Would be a challenge if the show gets popular
Fireside (monthly subscription) Pros:
Very easy
everything managed
reasonably priced
Decent stats - downloads, regions etc.
Cons:
Not much flexibility
No control if the service goes down
Could disappear one day
A CDN like libsyn (https://libsyn.com/)- monthly subscription
An RSS feed
Easy - Turnkey - fireside
HUGO - hard, but the best
WordPress
Where to put the RSS feed
Apple Podcasts
Spotify
used by many…So even if you don't like them, it is worth uploading the feed there.
YouTube
Every device has access to YouTube
A static image is better than nothing
A visualiser creates some movement which the algo likes (maybe?)
Don't mess with the recording machine! If you can have a dedicated machine just for recording, that is ideal. Don't do any updates without fully testing them!
My Take Outs
I really enjoyed this talk, and the willingness of Joe to share his secrets! I actually have the hardware required to make a podcast already. I might have to do something with my office, but I would need to make a recording to investigate. As a result of this, encouraged by Joe's talk, I will have a go and probably do something for Hacker Public Radio (see later…).
Build a social media platform in 20 minutes using ActivityPub
Background
ActivityPub is a decentralised social networking protocol which is the basis of the fediverse, and this talk by Terence Eden (@edent@mastodon.social) walked us through creating a very simple ActivityPub server, complete with example code.
Code
Here, on gitlab. No warranty given or implied!

Message Passing

Return type

My Take Outs
I would like to play with this, and consider whether there are applications where I could incorporate ActivityPub into my code.
Harmonised Amateur Radio Examination Certificate on Hacker Public Radio
Background
Ken Fallon is a volunteer for the Hacker Public Radio, and this talk was:
an explanation about Hacker Public Radio
Details about their efforts to create open material to train people to get their HAM licence. The HAREC syllabus is recognised in much of the world and used as a foundation for national HAM radio licences
An explanation of the links between hacking and HAM radio, encouraging participants to get involved with HAM radio if they have not already done so!
Figure 6: Links between Hacking and HAM Radio I have a copy of Ken's slides here, shared under CC by-SA 4.0.
My Take Outs
Using the information above, I would like to contribute a podcast to HPR. Having discussed this with Ken, my first step would be a simple introduction Podcast, which can then be followed up with a more technical podcast afterwards. I also need to get on with upgrading my UK Foundation Licence to a Full Licence!
Talks - Day 2
Opening
Welcome back everyone!
Home automation 🏠 A beginner's foray down the rabbit hole
Background
Millie Perkins (@milperks@mastodon.social) started her homelab journey on a Raspberry Pi, and them moved to a Dell Wyse 5070 running Proxmox. This talk explained her use of Home Assistant, including customised dashboard setup, and connection to her car!

My take outs
This talk reinforced my aim to setup and use Home Assistant again! Millie has a very polished system which she has customised to work for her use cases. Commendable.
Lightning Talks - Lunch session
My First Open Source Contribution
Matt recounted the story of his first open source contribution.
Some Websites - Mark
Mark shared some of the websites he uses, demonstrating that "old-school" sites are still valuable. I particularly liked https://www.parkytowers.me.uk/thin. This is an excellent resource for setting up and re-purposing thin clients. I have already used the information found here while setting up my new (to me) Dell Wyse 5070.
FLOSS for the stars
Sorry - I didn't get the presenter's name - apologies! Some open source applications for star gazing:
Stellarium - on the phone
Kstars
Ekos - camera control, including the mount.
Siril - Image processing
89 things to know about GIT commits
By Jamie. Jamie's site is here: https://www.jvt.me/. Unfortunately his 89 things presentation appears to have been taken down (or I wrote down the link incorrectly).
Building an Open Hardware PLC device
Learn to code - old school graphics!
Open Source Embroidery
Background
Margaret Low is based at Warwick University, and this talk explains how to use open source software with commercially available embroidery machines. As well as the work in the university, Margaret does outreach work with schools, training teaching staff to use the software with the children. As well as the talk, she set up practical demonstrations with some of her machines. Sadly, when I went to have a look later on Sunday afternoon, she had already gone, having a long drive back home in the evening.
Software
Two packages were shared:
Turtle Stitch - which runs in the browser
Ink Stitch - this is based on Inkscape, and is an extension you install after installing Inkscape.
Machines
These come with either 1 needle, or multiple needles. With the former, you need to change the thread by hand each time you want a different colour. With the latter, you can have as many thread colours as you have needles. Domestic machines may have up to 6 needles, but professional machines can have up to 32 needles. Even the domestic machines can be quite expensive (> £1000).
My take outs
Fabulous to see this in action, and to see the application of Open Source software in this field. Personally, I won't be doing anything with the information. I guess if you could make your design, then send it to someone to produce, that might be interesting?
Lit Up - Electric Elephants
Background
Chris Ellis shared his journey creating LED badges. Initially these were for a Postgres conference (hence the Elephant reference), but this has expanded since!
Hardware
Details of the badges is available https://intrbiz.com/electronics/led-pcb-art/.
Software
Chris has developed a really impressive simulator and programmer, which you can find here.
My Take Outs
First of all, a wonderful BBC Owl badge! Thanks Chris! I loved the evolution of the badges, and the development of the simulator/programmer. I need to work on my PCB development skills using KiCAD, and also my embedded programming skills. Chris clearly has all these skills, and has brought them together very effectively indeed.
Fighting Ens**ttification with ActivityPub
Background
James Smith (@Floppy@mastodon.me.uk) is the creator of ManyFold - a distributed system for sharing 3-D print models. ActivityPub is used to connect the different instances together and to Mastodon. You can find James's instance at https://manyfold.floppy.org.uk/, and from there you can find the links to the github repository.
Talk
James explained how to incorporate ActivityPub into your application, and how you can fight Ens**ttification as a result.
My Take outs
This talk reinforced the benefits of (and some of the challenges with implementing) ActivityPub into your application.
Book camp 📖 Discuss your favourite books
Background
A collaborative discussion where each of the attendees shared their favourite books. Lot's of wonderful ideas for books to read in the future. Thanks to Terence Eden and Tanya for moderating and taking the notes.
Books:
Title | Author | Comments |
---|---|---|
4000 weeks | Oliver Berkeman | Rephrasing our relationship with time |
Podkin One-Ear | Kieran Larwood | |
Lord of the Rings | J.R.R. Tolkien | |
The Rise and Fall of the Working Class | Selina Todd | |
Red Mars | Kim Stanley Robinson | |
Pragmatic Programmer | David Thomas | |
We are Legion, We are Bob | Dennis Taylor | Book 1 of the bobiverse |
Discworld Series | Terry Pratchett | |
The Empire of Normality | Robert Chapman | |
Children of Time | Adrian Tchaikovsky | |
The Dispossessed | Ursula Le Guin | |
The Three Body Problem | Cixin Liu | |
Fall or Dodge in Hell | Neil Stephenson | |
Git Commit Murder | Michael Warren Lucas | |
Snow Crash | Neal Stephenson | 30th Anniversary Edition has extra bit |
Tomorrow, Tomorrow, Tomorrow | Gabrielle Zevin | |
There is no anti-memetics division | QNTM | |
The Fifth Season | N.K. Jemisin | Broken Earth Series |
The Brentford Trilogy | Robert Rankin | |
Fight Club | Chuck Palahnuik | Also Damned |
Digital Korea | Tomi Ahonen | |
Jonnie The Homicidal Maniac | Thonen Vasquez | |
Lexicon | Max Barry |
UTAW Panel: "I'm a tech worker, I don't need a union"
Tech workers traditionally haven't joined unions, but with the changes in the tech industry, it is clear that union membership is worth considering. This Panel gave a chance for UTAW to share their activities, and to field questions from the audience about the benefits of membership.
Lightning Talks @ Pendulum / Main Room
Cultural Resources you might not know about
Daniel Littlewood (danielittlewood@fosstodon.org and https://danielittlewood.xyz)
https://openculture.com Regular news stories about open culture. https://publicdomainreview.org/ Reviews of public domain books and films. Smithsonian Open Access https://www.si.edu/openaccess https://standardebooks.org/ beautiful CC-0 ebooks of old books in the public domain. https://github.com/jemmybutton/byrne-euclid Oliver Byrne's Euclid https://librivox.org/ CC-0 audiobooks of old books in the public domain. https://public.work/ search engine of public domain works with a cool UI. https://freemusicarchive.org/home https://bandcamp.com/discover/creative-commons C418 (minecraft) is "nearly free"; Randy Goffe (HOME): randygoffe
Password Creation
Use a secret word, and a hashing algorithm. Take the name of the website, add the secret word, then use the hashing algorithm to create the password. Easy to remember how to recover the password in the future, without the need for a password manager.
Output Markdown from a Website
https://urltomarkdown.com The code is at https://github.com/macsplit. Libraries are listed at the bottom of the urltomarkdown.com website.
Frankenender
Fixing/Modifying a broken 3D printer! https://www.leighhack.org
Developer on Duty
Setting up a rota to share responsibilities for responding to problems around the clock - Developer on Duty.
Closing / OggCamp Raffle
Wrap up! Thanks to the team of organisers and volunteers, the presenters and to the participants who made the event an enjoyable experience.
Summary
I had a great weekend, and learned many things. Since OggCamp, I have set up a webpage created using org-mode, and also purchased a Dell Wyse 5070 which will be the tool for experimentation with some of the applications shared in the OggCamp presentations. See you at the next one?